package br.gov.mi.corporativo.dominio.comum;

// default package
// Generated 12/11/2014 10:19:36 by Hibernate Tools 4.0.0


import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

import org.hibernate.annotations.Immutable;

/**
 * PessoaDomicilioBancario generated by hbm2java
 */
@Entity @Immutable
@Table(schema="DES_COMUM",name = "PESSOA_DOMICILIO_BANCARIO", uniqueConstraints = @UniqueConstraint(columnNames = {
		"ID_PESSOA", "ST_CONTA_PRINCIPAL" }))
public final class PessoaDomicilioBancario implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -4434887254505457431L;
	@Id
	@Column(name = "ID_PESSOA_DOMICILIO_BANCARIO", unique = true, nullable = false, precision = 22, scale = 0)
	private Long idPessoaDomicilioBancario;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ID_PESSOA", nullable = false)
	private Pessoa pessoa;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ID_AGENCIA", nullable = false)
	private Agencia agencia;
	
	@Column(name = "NR_CONTA_CORRENTE", nullable = false, length = 20)
	private String nrContaCorrente;
	
	@Column(name = "ST_CONTA_PRINCIPAL", nullable = false, length = 1)
	private String stContaPrincipal;
	
	@Column(name = "ST_REGISTRO", nullable = false, length = 1)
	private String stRegistro;

	public PessoaDomicilioBancario() {
	}

	public PessoaDomicilioBancario(Long idPessoaDomicilioBancario,
			Pessoa pessoa, Agencia agencia, String nrContaCorrente,
			String stContaPrincipal, String stRegistro) {
		this.idPessoaDomicilioBancario = idPessoaDomicilioBancario;
		this.pessoa = pessoa;
		this.agencia = agencia;
		this.nrContaCorrente = nrContaCorrente;
		this.stContaPrincipal = stContaPrincipal;
		this.stRegistro = stRegistro;
	}

	
	public Long getIdPessoaDomicilioBancario() {
		return this.idPessoaDomicilioBancario;
	}

	
	public Pessoa getPessoa() {
		return this.pessoa;
	}

	
	public Agencia getAgencia() {
		return this.agencia;
	}

	
	public String getNrContaCorrente() {
		return this.nrContaCorrente;
	}

	
	public String getStContaPrincipal() {
		return this.stContaPrincipal;
	}

	
	public String getStRegistro() {
		return this.stRegistro;
	}

}
